1. Field of the Invention
The present invention relates to a TCP (Transmission Control Protocol) communication speed improving system which can be employed in a LAN-to-LAN (Local Area Network) communication using a wide area network, etc.
2. Description of the Prior Art
In general, where the LAN-to-LAN communication is carried out by using TCP/IP (Transmission Control Protocol/Internet Protocol) via the wide area network, etc., the mutual connection system called a router, which can handle the processes up to the third layer (network layer) level in the OSI (Open Systems Interconnection) reference model is employed to connect LAN and the wide area network. In the mutual connection system, the protocol processes in the physical layer to the network layer in the OSI reference model have been accomplished, and flow control and error control are carried out between the terminals by using TCP on an end-to-end basis.
In the communication in which the flow control and the error control are carried out between the terminals by using TCP on an end-to-end basis as above, there has been such a problem that throughput which mates with the bandwidth cannot be achieved if delay, error, congestion, etc. are contained or generated in the wide area network. Meanwhile, there has been proposed an approach which can improve the throughput in the network with large delay by introducing a new parameter which is called a xe2x80x9cwindow scalexe2x80x9d by extending TCP to implement a large window size. However, in order to utilize the large window size effectively in this approach, not only the extended TCP must be introduced into both communication terminals, but also the window size of TCP must be adjusted in both terminals every communication destination or every application. Furthermore, in order to avoid throughput degradation due to the delay, such an approach has already been proposed in Patent Application Publication (KOKAI) Hei 7-250100, etc. that the mutual connection system is designed to handle the process up to TCP and then the protocol is introduced between the mutual connection systems to achieve the flow control on a link-by-link basis.
In the above-mentioned mutual connection system which can handle the process up to TCP, the protocol with the large window size is employed in order to execute the flow control corresponding to the delay. At this time, since individual flow controls are provided by assigning the large window size to individual TCP connections, if a plurality of TCP connections are to be handled, it is impossible to achieve effective buffer utilization and also there is a possibility that buffer overflow is caused.
It is an object of the present invention to provide a TCP communication speed improving system which is capable of achieving effective buffer utilization in handling a plurality of TCP connections.
In order to achieve the above object, there is provided a TCP communication speed improving system which is attached to both ends of a wide area network constructed by connecting a plurality of LANs together, the network being able to establish data communication using TCP/IP, the system comprising: a packet processing means which has a packet relay function in a data link layer of an OSI reference model, and provides processes up to TCP in a transport layer in the OSI reference model to a received packet; a terminating means for terminating TCP flow control and retransmission control of TCP packets which are input from a transmitter side terminal, in place of a receiver side terminal; a first packet transferring means for transferring the packet to another TCP communication speed improving system which is located on an opposite side view the wide area network, by using peculiar flow control procedures and selective transmission procedures using service specific connection oriented protocol (SSCOP) in the data link layer; and a second packet transferring means for transferring the packet to the receiver side terminal in accordance with the TCP flow control and the retransmission control, in place of the transmitter side terminal; wherein processes of the terminating means, the first packet transferring means, and the second packet transferring means can be provided simultaneously to a plurality of TCP connections.
In the preferred embodiment of the present invention, in relation to another TCP communication speed improving system which is located on the opposite, each flow control for each TCP connection is carried out based on a large window size according to a delay, while a flow control for all TCP connections is carried out.
In the TCP communication speed improving system, the common sequence number (global sequence number) which is common to all TCP connections for the flow control in all the TCP connections is assigned to the packet independent of the sequence numbers which are assigned to individual TCP connections, and the maximum value of the receivable global sequence number is sent to the opposing side as the credit, based on the maximum value of the previously set data packet which can be held in the system. The transmitter side can transmit the packet until the informed global sequence number is occupied.
Also, when respective TCP connections receive the TCP data packets from the transmitter side terminal, they can transmit the packet to the opposing side if they have space in the transmission window assigned to individual TCP connections and have the global credit. If they do not have the global credit, they manage the transmission queue arranged in every TCP connection.
In addition, in the flow control applied to all the TCP connections, in order to prevent a deadlock which is caused because both systems are brought mutually into the condition to wait the credit, the flow control is not carried out in such a manner that the global sequence number is not updated for the packets such as global credit notification, ACK, SYN, FIN, RST, etc., which are not held in the system and do not include user data.
Moreover, when the transmission to the opposing side is newly enabled by the flow control for all the TCP connections, fairness of the throughput can be ensured by transmitting the packet in the order of windows having larger empty space, the windows being assigned to individual TCP connections.
The nature, principle and utility of the invention will become more apparent from the following detailed description when read in conjunction with the accompanying drawings.